package com.esdk.test.orm;
import java.sql.Connection;
import com.esdk.sql.orm.AbstractSelect;
import java.sql.SQLException;
import com.esdk.sql.ISQL;
import com.esdk.sql.Field;
import java.util.Date;
import com.esdk.sql.SmartBetween;

public class SysUserSelect extends AbstractSelect<SysUserSelect,SysUserRow> implements ISQL{
  public static final SysUserMetaData metaData=new SysUserMetaData();
  public static final SysUserMetaData md=metaData;
  public SysUserSelect(){
    super(SysUserMetaData.TABLENAME,false);
  }

  public SysUserSelect(Connection conn,boolean isTop){
    super(SysUserMetaData.TABLENAME,isTop,conn);
  }

  public SysUserSelect(Connection conn){
    super(SysUserMetaData.TABLENAME,conn);
  }

  public SysUserSelect(boolean isJoin){
    super(SysUserMetaData.TABLENAME,isJoin);
  }

  public SysUserSelect(String joinType){
    super(SysUserMetaData.TABLENAME,joinType);
  }

  public SysUserMetaData getMetaData(){
    return metaData;
  }

  public SysUserRow[] toSysUserRowArray()throws Exception{
    return (SysUserRow[])list().toArray(new SysUserRow[0]);
  }

  public SysUserRow getFirstSysUserRow(){
    return (SysUserRow)getFirstRow();
  }

  public SysUserRow getFirstSysUserRow(boolean isCreateInstance){
    return (SysUserRow)getFirstRow(isCreateInstance);
  }

  public SysUserResultSet toSysUserResultSet()throws SQLException{
    return (SysUserResultSet)toParentResultSet();
  }

  public void setPrimaryKey(Object value){
    fieldMap.put(SysUserMetaData.PrimaryKey,value);
  }

  public Long getUserId(){
    return (Long)fieldMap.get(SysUserMetaData.UserId);
  }

  public SysUserSelect setUserId(Long value){
    fieldMap.put(SysUserMetaData.UserId,value);
    return this;
  }

  public SysUserSelect setUserId(Long[] values){
    super.in(SysUserMetaData.UserId,values);
    return this;
  }

  public SysUserSelect setUserId(AbstractSelect select){
    super.in(SysUserMetaData.UserId,select);
    return this;
  }

  public Field createUserIdField(){
    return this.createField(metaData.UserId);
  }

  public String getUserType(){
    return (String)fieldMap.get(SysUserMetaData.UserType);
  }

  public SysUserSelect setUserType(String value){
    fieldMap.put(SysUserMetaData.UserType,value);
    return this;
  }

  public SysUserSelect setUserType(String[] values){
    super.in(SysUserMetaData.UserType,values);
    return this;
  }

  public SysUserSelect setUserType(AbstractSelect select){
    super.in(SysUserMetaData.UserType,select);
    return this;
  }

  public SysUserSelect addLikeUserType(String value){
    addLikeCondition(metaData.UserType,value);
    return this;
  }

  public Field createUserTypeField(){
    return this.createField(metaData.UserType);
  }

  public String getUserCode(){
    return (String)fieldMap.get(SysUserMetaData.UserCode);
  }

  public SysUserSelect setUserCode(String value){
    fieldMap.put(SysUserMetaData.UserCode,value);
    return this;
  }

  public SysUserSelect setUserCode(String[] values){
    super.in(SysUserMetaData.UserCode,values);
    return this;
  }

  public SysUserSelect setUserCode(AbstractSelect select){
    super.in(SysUserMetaData.UserCode,select);
    return this;
  }

  public SysUserSelect addLikeUserCode(String value){
    addLikeCondition(metaData.UserCode,value);
    return this;
  }

  public Field createUserCodeField(){
    return this.createField(metaData.UserCode);
  }

  public String getUserName(){
    return (String)fieldMap.get(SysUserMetaData.UserName);
  }

  public SysUserSelect setUserName(String value){
    fieldMap.put(SysUserMetaData.UserName,value);
    return this;
  }

  public SysUserSelect setUserName(String[] values){
    super.in(SysUserMetaData.UserName,values);
    return this;
  }

  public SysUserSelect setUserName(AbstractSelect select){
    super.in(SysUserMetaData.UserName,select);
    return this;
  }

  public SysUserSelect addLikeUserName(String value){
    addLikeCondition(metaData.UserName,value);
    return this;
  }

  public Field createUserNameField(){
    return this.createField(metaData.UserName);
  }

  public String getUserNick(){
    return (String)fieldMap.get(SysUserMetaData.UserNick);
  }

  public SysUserSelect setUserNick(String value){
    fieldMap.put(SysUserMetaData.UserNick,value);
    return this;
  }

  public SysUserSelect setUserNick(String[] values){
    super.in(SysUserMetaData.UserNick,values);
    return this;
  }

  public SysUserSelect setUserNick(AbstractSelect select){
    super.in(SysUserMetaData.UserNick,select);
    return this;
  }

  public SysUserSelect addLikeUserNick(String value){
    addLikeCondition(metaData.UserNick,value);
    return this;
  }

  public Field createUserNickField(){
    return this.createField(metaData.UserNick);
  }

  public String getSex(){
    return (String)fieldMap.get(SysUserMetaData.Sex);
  }

  public SysUserSelect setSex(String value){
    fieldMap.put(SysUserMetaData.Sex,value);
    return this;
  }

  public SysUserSelect setSex(String[] values){
    super.in(SysUserMetaData.Sex,values);
    return this;
  }

  public SysUserSelect setSex(AbstractSelect select){
    super.in(SysUserMetaData.Sex,select);
    return this;
  }

  public SysUserSelect addLikeSex(String value){
    addLikeCondition(metaData.Sex,value);
    return this;
  }

  public Field createSexField(){
    return this.createField(metaData.Sex);
  }

  public String getMobile(){
    return (String)fieldMap.get(SysUserMetaData.Mobile);
  }

  public SysUserSelect setMobile(String value){
    fieldMap.put(SysUserMetaData.Mobile,value);
    return this;
  }

  public SysUserSelect setMobile(String[] values){
    super.in(SysUserMetaData.Mobile,values);
    return this;
  }

  public SysUserSelect setMobile(AbstractSelect select){
    super.in(SysUserMetaData.Mobile,select);
    return this;
  }

  public SysUserSelect addLikeMobile(String value){
    addLikeCondition(metaData.Mobile,value);
    return this;
  }

  public Field createMobileField(){
    return this.createField(metaData.Mobile);
  }

  public String getEmail(){
    return (String)fieldMap.get(SysUserMetaData.Email);
  }

  public SysUserSelect setEmail(String value){
    fieldMap.put(SysUserMetaData.Email,value);
    return this;
  }

  public SysUserSelect setEmail(String[] values){
    super.in(SysUserMetaData.Email,values);
    return this;
  }

  public SysUserSelect setEmail(AbstractSelect select){
    super.in(SysUserMetaData.Email,select);
    return this;
  }

  public SysUserSelect addLikeEmail(String value){
    addLikeCondition(metaData.Email,value);
    return this;
  }

  public Field createEmailField(){
    return this.createField(metaData.Email);
  }

  public String getPassword(){
    return (String)fieldMap.get(SysUserMetaData.Password);
  }

  public SysUserSelect setPassword(String value){
    fieldMap.put(SysUserMetaData.Password,value);
    return this;
  }

  public SysUserSelect setPassword(String[] values){
    super.in(SysUserMetaData.Password,values);
    return this;
  }

  public SysUserSelect setPassword(AbstractSelect select){
    super.in(SysUserMetaData.Password,select);
    return this;
  }

  public SysUserSelect addLikePassword(String value){
    addLikeCondition(metaData.Password,value);
    return this;
  }

  public Field createPasswordField(){
    return this.createField(metaData.Password);
  }

  public String getRemark(){
    return (String)fieldMap.get(SysUserMetaData.Remark);
  }

  public SysUserSelect setRemark(String value){
    fieldMap.put(SysUserMetaData.Remark,value);
    return this;
  }

  public SysUserSelect setRemark(String[] values){
    super.in(SysUserMetaData.Remark,values);
    return this;
  }

  public SysUserSelect setRemark(AbstractSelect select){
    super.in(SysUserMetaData.Remark,select);
    return this;
  }

  public SysUserSelect addLikeRemark(String value){
    addLikeCondition(metaData.Remark,value);
    return this;
  }

  public Field createRemarkField(){
    return this.createField(metaData.Remark);
  }

  public String getAvatarUrl(){
    return (String)fieldMap.get(SysUserMetaData.AvatarUrl);
  }

  public SysUserSelect setAvatarUrl(String value){
    fieldMap.put(SysUserMetaData.AvatarUrl,value);
    return this;
  }

  public SysUserSelect setAvatarUrl(String[] values){
    super.in(SysUserMetaData.AvatarUrl,values);
    return this;
  }

  public SysUserSelect setAvatarUrl(AbstractSelect select){
    super.in(SysUserMetaData.AvatarUrl,select);
    return this;
  }

  public SysUserSelect addLikeAvatarUrl(String value){
    addLikeCondition(metaData.AvatarUrl,value);
    return this;
  }

  public Field createAvatarUrlField(){
    return this.createField(metaData.AvatarUrl);
  }

  public Long getTenantId(){
    return (Long)fieldMap.get(SysUserMetaData.TenantId);
  }

  public SysUserSelect setTenantId(Long value){
    fieldMap.put(SysUserMetaData.TenantId,value);
    return this;
  }

  public SysUserSelect setTenantId(Long[] values){
    super.in(SysUserMetaData.TenantId,values);
    return this;
  }

  public SysUserSelect setTenantId(AbstractSelect select){
    super.in(SysUserMetaData.TenantId,select);
    return this;
  }

  public Field createTenantIdField(){
    return this.createField(metaData.TenantId);
  }

  public Long getLoginTenantId(){
    return (Long)fieldMap.get(SysUserMetaData.LoginTenantId);
  }

  public SysUserSelect setLoginTenantId(Long value){
    fieldMap.put(SysUserMetaData.LoginTenantId,value);
    return this;
  }

  public SysUserSelect setLoginTenantId(Long[] values){
    super.in(SysUserMetaData.LoginTenantId,values);
    return this;
  }

  public SysUserSelect setLoginTenantId(AbstractSelect select){
    super.in(SysUserMetaData.LoginTenantId,select);
    return this;
  }

  public Field createLoginTenantIdField(){
    return this.createField(metaData.LoginTenantId);
  }

  public String getTenantIds(){
    return (String)fieldMap.get(SysUserMetaData.TenantIds);
  }

  public SysUserSelect setTenantIds(String value){
    fieldMap.put(SysUserMetaData.TenantIds,value);
    return this;
  }

  public SysUserSelect setTenantIds(String[] values){
    super.in(SysUserMetaData.TenantIds,values);
    return this;
  }

  public SysUserSelect setTenantIds(AbstractSelect select){
    super.in(SysUserMetaData.TenantIds,select);
    return this;
  }

  public SysUserSelect addLikeTenantIds(String value){
    addLikeCondition(metaData.TenantIds,value);
    return this;
  }

  public Field createTenantIdsField(){
    return this.createField(metaData.TenantIds);
  }

  public String getTenantNames(){
    return (String)fieldMap.get(SysUserMetaData.TenantNames);
  }

  public SysUserSelect setTenantNames(String value){
    fieldMap.put(SysUserMetaData.TenantNames,value);
    return this;
  }

  public SysUserSelect setTenantNames(String[] values){
    super.in(SysUserMetaData.TenantNames,values);
    return this;
  }

  public SysUserSelect setTenantNames(AbstractSelect select){
    super.in(SysUserMetaData.TenantNames,select);
    return this;
  }

  public SysUserSelect addLikeTenantNames(String value){
    addLikeCondition(metaData.TenantNames,value);
    return this;
  }

  public Field createTenantNamesField(){
    return this.createField(metaData.TenantNames);
  }

  public String getOrgIds(){
    return (String)fieldMap.get(SysUserMetaData.OrgIds);
  }

  public SysUserSelect setOrgIds(String value){
    fieldMap.put(SysUserMetaData.OrgIds,value);
    return this;
  }

  public SysUserSelect setOrgIds(String[] values){
    super.in(SysUserMetaData.OrgIds,values);
    return this;
  }

  public SysUserSelect setOrgIds(AbstractSelect select){
    super.in(SysUserMetaData.OrgIds,select);
    return this;
  }

  public SysUserSelect addLikeOrgIds(String value){
    addLikeCondition(metaData.OrgIds,value);
    return this;
  }

  public Field createOrgIdsField(){
    return this.createField(metaData.OrgIds);
  }

  public String getOrgNames(){
    return (String)fieldMap.get(SysUserMetaData.OrgNames);
  }

  public SysUserSelect setOrgNames(String value){
    fieldMap.put(SysUserMetaData.OrgNames,value);
    return this;
  }

  public SysUserSelect setOrgNames(String[] values){
    super.in(SysUserMetaData.OrgNames,values);
    return this;
  }

  public SysUserSelect setOrgNames(AbstractSelect select){
    super.in(SysUserMetaData.OrgNames,select);
    return this;
  }

  public SysUserSelect addLikeOrgNames(String value){
    addLikeCondition(metaData.OrgNames,value);
    return this;
  }

  public Field createOrgNamesField(){
    return this.createField(metaData.OrgNames);
  }

  public String getRoleIds(){
    return (String)fieldMap.get(SysUserMetaData.RoleIds);
  }

  public SysUserSelect setRoleIds(String value){
    fieldMap.put(SysUserMetaData.RoleIds,value);
    return this;
  }

  public SysUserSelect setRoleIds(String[] values){
    super.in(SysUserMetaData.RoleIds,values);
    return this;
  }

  public SysUserSelect setRoleIds(AbstractSelect select){
    super.in(SysUserMetaData.RoleIds,select);
    return this;
  }

  public SysUserSelect addLikeRoleIds(String value){
    addLikeCondition(metaData.RoleIds,value);
    return this;
  }

  public Field createRoleIdsField(){
    return this.createField(metaData.RoleIds);
  }

  public String getRoleNames(){
    return (String)fieldMap.get(SysUserMetaData.RoleNames);
  }

  public SysUserSelect setRoleNames(String value){
    fieldMap.put(SysUserMetaData.RoleNames,value);
    return this;
  }

  public SysUserSelect setRoleNames(String[] values){
    super.in(SysUserMetaData.RoleNames,values);
    return this;
  }

  public SysUserSelect setRoleNames(AbstractSelect select){
    super.in(SysUserMetaData.RoleNames,select);
    return this;
  }

  public SysUserSelect addLikeRoleNames(String value){
    addLikeCondition(metaData.RoleNames,value);
    return this;
  }

  public Field createRoleNamesField(){
    return this.createField(metaData.RoleNames);
  }

  public String getRank(){
    return (String)fieldMap.get(SysUserMetaData.Rank);
  }

  public SysUserSelect setRank(String value){
    fieldMap.put(SysUserMetaData.Rank,value);
    return this;
  }

  public SysUserSelect setRank(String[] values){
    super.in(SysUserMetaData.Rank,values);
    return this;
  }

  public SysUserSelect setRank(AbstractSelect select){
    super.in(SysUserMetaData.Rank,select);
    return this;
  }

  public SysUserSelect addLikeRank(String value){
    addLikeCondition(metaData.Rank,value);
    return this;
  }

  public Field createRankField(){
    return this.createField(metaData.Rank);
  }

  public Boolean getIsEnabled(){
    return (Boolean)fieldMap.get(SysUserMetaData.IsEnabled);
  }

  public SysUserSelect setIsEnabled(Boolean value){
    fieldMap.put(SysUserMetaData.IsEnabled,value);
    return this;
  }

  public Field createIsEnabledField(){
    return this.createField(metaData.IsEnabled);
  }

  public Boolean getValid(){
    return (Boolean)fieldMap.get(SysUserMetaData.Valid);
  }

  public SysUserSelect setValid(Boolean value){
    fieldMap.put(SysUserMetaData.Valid,value);
    return this;
  }

  public Field createValidField(){
    return this.createField(metaData.Valid);
  }

  public Date getCreateTime(){
    return (Date)fieldMap.get(SysUserMetaData.CreateTime);
  }

  public SysUserSelect setCreateTime(Date value){
    fieldMap.put(SysUserMetaData.CreateTime,value);
    return this;
  }

  public SysUserSelect setCreateTime(Date start,Date end){
    fieldMap.put(SysUserMetaData.CreateTime,new SmartBetween(this.createField(SysUserMetaData.CreateTime),start,end));
    return this;
  }

  public Field createCreateTimeField(){
    return this.createField(metaData.CreateTime);
  }

  public Long getCreateUserId(){
    return (Long)fieldMap.get(SysUserMetaData.CreateUserId);
  }

  public SysUserSelect setCreateUserId(Long value){
    fieldMap.put(SysUserMetaData.CreateUserId,value);
    return this;
  }

  public SysUserSelect setCreateUserId(Long[] values){
    super.in(SysUserMetaData.CreateUserId,values);
    return this;
  }

  public SysUserSelect setCreateUserId(AbstractSelect select){
    super.in(SysUserMetaData.CreateUserId,select);
    return this;
  }

  public Field createCreateUserIdField(){
    return this.createField(metaData.CreateUserId);
  }

  public String getCreateUserName(){
    return (String)fieldMap.get(SysUserMetaData.CreateUserName);
  }

  public SysUserSelect setCreateUserName(String value){
    fieldMap.put(SysUserMetaData.CreateUserName,value);
    return this;
  }

  public SysUserSelect setCreateUserName(String[] values){
    super.in(SysUserMetaData.CreateUserName,values);
    return this;
  }

  public SysUserSelect setCreateUserName(AbstractSelect select){
    super.in(SysUserMetaData.CreateUserName,select);
    return this;
  }

  public SysUserSelect addLikeCreateUserName(String value){
    addLikeCondition(metaData.CreateUserName,value);
    return this;
  }

  public Field createCreateUserNameField(){
    return this.createField(metaData.CreateUserName);
  }

  public Date getUpdateTime(){
    return (Date)fieldMap.get(SysUserMetaData.UpdateTime);
  }

  public SysUserSelect setUpdateTime(Date value){
    fieldMap.put(SysUserMetaData.UpdateTime,value);
    return this;
  }

  public SysUserSelect setUpdateTime(Date start,Date end){
    fieldMap.put(SysUserMetaData.UpdateTime,new SmartBetween(this.createField(SysUserMetaData.UpdateTime),start,end));
    return this;
  }

  public Field createUpdateTimeField(){
    return this.createField(metaData.UpdateTime);
  }

  public Long getUpdateUserId(){
    return (Long)fieldMap.get(SysUserMetaData.UpdateUserId);
  }

  public SysUserSelect setUpdateUserId(Long value){
    fieldMap.put(SysUserMetaData.UpdateUserId,value);
    return this;
  }

  public SysUserSelect setUpdateUserId(Long[] values){
    super.in(SysUserMetaData.UpdateUserId,values);
    return this;
  }

  public SysUserSelect setUpdateUserId(AbstractSelect select){
    super.in(SysUserMetaData.UpdateUserId,select);
    return this;
  }

  public Field createUpdateUserIdField(){
    return this.createField(metaData.UpdateUserId);
  }

  public String getUpdateUserName(){
    return (String)fieldMap.get(SysUserMetaData.UpdateUserName);
  }

  public SysUserSelect setUpdateUserName(String value){
    fieldMap.put(SysUserMetaData.UpdateUserName,value);
    return this;
  }

  public SysUserSelect setUpdateUserName(String[] values){
    super.in(SysUserMetaData.UpdateUserName,values);
    return this;
  }

  public SysUserSelect setUpdateUserName(AbstractSelect select){
    super.in(SysUserMetaData.UpdateUserName,select);
    return this;
  }

  public SysUserSelect addLikeUpdateUserName(String value){
    addLikeCondition(metaData.UpdateUserName,value);
    return this;
  }

  public Field createUpdateUserNameField(){
    return this.createField(metaData.UpdateUserName);
  }

  public Integer getVersion(){
    return (Integer)fieldMap.get(SysUserMetaData.Version);
  }

  public SysUserSelect setVersion(Integer value){
    fieldMap.put(SysUserMetaData.Version,value);
    return this;
  }

  public SysUserSelect setVersion(Integer[] values){
    super.in(SysUserMetaData.Version,values);
    return this;
  }

  public SysUserSelect setVersion(AbstractSelect select){
    super.in(SysUserMetaData.Version,select);
    return this;
  }

  public SysUserSelect setVersion(Integer start,Integer end){
    fieldMap.put(SysUserMetaData.Version,new SmartBetween(this.createField(SysUserMetaData.Version),start,end));
    return this;
  }

  public Field createVersionField(){
    return this.createField(metaData.Version);
  }

}
